
use crate::metadata::ir::*;
pub(crate) static REGISTERS: IR = IR {
    blocks: &[Block {
        name: "Fdcan",
        extends: None,
        description: Some("Controller area network with flexible data rate (FD)"),
        items: &[
            BlockItem {
                name: "crel",
                description: Some("FDCAN Core Release Register"),
                array: None,
                byte_offset: 0x0,
                inner: BlockItemInner::Register(Register {
                    access: Access::ReadWrite,
                    bit_size: 32,
                    fieldset: Some("Crel"),
                }),
            },
            BlockItem {
                name: "endn",
                description: Some("FDCAN Core Release Register"),
                array: None,
                byte_offset: 0x4,
                inner: BlockItemInner::Register(Register {
                    access: Access::ReadWrite,
                    bit_size: 32,
                    fieldset: Some("Endn"),
                }),
            },
            BlockItem {
                name: "dbtp",
                description: Some("FDCAN Data Bit Timing and Prescaler Register"),
                array: None,
                byte_offset: 0xc,
                inner: BlockItemInner::Register(Register {
                    access: Access::ReadWrite,
                    bit_size: 32,
                    fieldset: Some("Dbtp"),
                }),
            },
            BlockItem {
                name: "test",
                description: Some("FDCAN Test Register"),
                array: None,
                byte_offset: 0x10,
                inner: BlockItemInner::Register(Register {
                    access: Access::ReadWrite,
                    bit_size: 32,
                    fieldset: Some("Test"),
                }),
            },
            BlockItem {
                name: "rwd",
                description: Some("FDCAN RAM Watchdog Register"),
                array: None,
                byte_offset: 0x14,
                inner: BlockItemInner::Register(Register {
                    access: Access::ReadWrite,
                    bit_size: 32,
                    fieldset: Some("Rwd"),
                }),
            },
            BlockItem {
                name: "cccr",
                description: Some("FDCAN CC Control Register"),
                array: None,
                byte_offset: 0x18,
                inner: BlockItemInner::Register(Register {
                    access: Access::ReadWrite,
                    bit_size: 32,
                    fieldset: Some("Cccr"),
                }),
            },
            BlockItem {
                name: "nbtp",
                description: Some("FDCAN Nominal Bit Timing and Prescaler Register"),
                array: None,
                byte_offset: 0x1c,
                inner: BlockItemInner::Register(Register {
                    access: Access::ReadWrite,
                    bit_size: 32,
                    fieldset: Some("Nbtp"),
                }),
            },
            BlockItem {
                name: "tscc",
                description: Some("FDCAN Timestamp Counter Configuration Register"),
                array: None,
                byte_offset: 0x20,
                inner: BlockItemInner::Register(Register {
                    access: Access::ReadWrite,
                    bit_size: 32,
                    fieldset: Some("Tscc"),
                }),
            },
            BlockItem {
                name: "tscv",
                description: Some("FDCAN Timestamp Counter Value Register"),
                array: None,
                byte_offset: 0x24,
                inner: BlockItemInner::Register(Register {
                    access: Access::ReadWrite,
                    bit_size: 32,
                    fieldset: Some("Tscv"),
                }),
            },
            BlockItem {
                name: "tocc",
                description: Some("FDCAN Timeout Counter Configuration Register"),
                array: None,
                byte_offset: 0x28,
                inner: BlockItemInner::Register(Register {
                    access: Access::ReadWrite,
                    bit_size: 32,
                    fieldset: Some("Tocc"),
                }),
            },
            BlockItem {
                name: "tocv",
                description: Some("FDCAN Timeout Counter Value Register"),
                array: None,
                byte_offset: 0x2c,
                inner: BlockItemInner::Register(Register {
                    access: Access::ReadWrite,
                    bit_size: 32,
                    fieldset: Some("Tocv"),
                }),
            },
            BlockItem {
                name: "ecr",
                description: Some("FDCAN Error Counter Register"),
                array: None,
                byte_offset: 0x40,
                inner: BlockItemInner::Register(Register {
                    access: Access::ReadWrite,
                    bit_size: 32,
                    fieldset: Some("Ecr"),
                }),
            },
            BlockItem {
                name: "psr",
                description: Some("FDCAN Protocol Status Register"),
                array: None,
                byte_offset: 0x44,
                inner: BlockItemInner::Register(Register {
                    access: Access::ReadWrite,
                    bit_size: 32,
                    fieldset: Some("Psr"),
                }),
            },
            BlockItem {
                name: "tdcr",
                description: Some("FDCAN Transmitter Delay Compensation Register"),
                array: None,
                byte_offset: 0x48,
                inner: BlockItemInner::Register(Register {
                    access: Access::ReadWrite,
                    bit_size: 32,
                    fieldset: Some("Tdcr"),
                }),
            },
            BlockItem {
                name: "ir",
                description: Some("FDCAN Interrupt Register"),
                array: None,
                byte_offset: 0x50,
                inner: BlockItemInner::Register(Register {
                    access: Access::ReadWrite,
                    bit_size: 32,
                    fieldset: Some("Ir"),
                }),
            },
            BlockItem {
                name: "ie",
                description: Some("FDCAN Interrupt Enable Register"),
                array: None,
                byte_offset: 0x54,
                inner: BlockItemInner::Register(Register {
                    access: Access::ReadWrite,
                    bit_size: 32,
                    fieldset: Some("Ie"),
                }),
            },
            BlockItem {
                name: "ils",
                description: Some("FDCAN Interrupt Line Select Register"),
                array: None,
                byte_offset: 0x58,
                inner: BlockItemInner::Register(Register {
                    access: Access::ReadWrite,
                    bit_size: 32,
                    fieldset: Some("Ils"),
                }),
            },
            BlockItem {
                name: "ile",
                description: Some("FDCAN Interrupt Line Enable Register"),
                array: None,
                byte_offset: 0x5c,
                inner: BlockItemInner::Register(Register {
                    access: Access::ReadWrite,
                    bit_size: 32,
                    fieldset: Some("Ile"),
                }),
            },
            BlockItem {
                name: "gfc",
                description: Some("FDCAN Global Filter Configuration Register"),
                array: None,
                byte_offset: 0x80,
                inner: BlockItemInner::Register(Register {
                    access: Access::ReadWrite,
                    bit_size: 32,
                    fieldset: Some("Gfc"),
                }),
            },
            BlockItem {
                name: "sidfc",
                description: Some("FDCAN Standard ID Filter Configuration Register"),
                array: None,
                byte_offset: 0x84,
                inner: BlockItemInner::Register(Register {
                    access: Access::ReadWrite,
                    bit_size: 32,
                    fieldset: Some("Sidfc"),
                }),
            },
            BlockItem {
                name: "xidfc",
                description: Some("FDCAN Extended ID Filter Configuration Register"),
                array: None,
                byte_offset: 0x88,
                inner: BlockItemInner::Register(Register {
                    access: Access::ReadWrite,
                    bit_size: 32,
                    fieldset: Some("Xidfc"),
                }),
            },
            BlockItem {
                name: "xidam",
                description: Some("FDCAN Extended ID and Mask Register"),
                array: None,
                byte_offset: 0x90,
                inner: BlockItemInner::Register(Register {
                    access: Access::ReadWrite,
                    bit_size: 32,
                    fieldset: Some("Xidam"),
                }),
            },
            BlockItem {
                name: "hpms",
                description: Some("FDCAN High Priority Message Status Register"),
                array: None,
                byte_offset: 0x94,
                inner: BlockItemInner::Register(Register {
                    access: Access::ReadWrite,
                    bit_size: 32,
                    fieldset: Some("Hpms"),
                }),
            },
            BlockItem {
                name: "ndat1",
                description: Some("FDCAN New Data 1 Register"),
                array: None,
                byte_offset: 0x98,
                inner: BlockItemInner::Register(Register {
                    access: Access::ReadWrite,
                    bit_size: 32,
                    fieldset: Some("Ndat1"),
                }),
            },
            BlockItem {
                name: "ndat2",
                description: Some("FDCAN New Data 2 Register"),
                array: None,
                byte_offset: 0x9c,
                inner: BlockItemInner::Register(Register {
                    access: Access::ReadWrite,
                    bit_size: 32,
                    fieldset: Some("Ndat2"),
                }),
            },
            BlockItem {
                name: "rxfc",
                description: Some("FDCAN Rx FIFO X Configuration Register"),
                array: Some(Array::Cursed(CursedArray { offsets: &[0, 16] })),
                byte_offset: 0xa0,
                inner: BlockItemInner::Register(Register {
                    access: Access::ReadWrite,
                    bit_size: 32,
                    fieldset: Some("Rxfc"),
                }),
            },
            BlockItem {
                name: "rxfs",
                description: Some("FDCAN Rx FIFO X Status Register"),
                array: Some(Array::Cursed(CursedArray { offsets: &[0, 16] })),
                byte_offset: 0xa4,
                inner: BlockItemInner::Register(Register {
                    access: Access::ReadWrite,
                    bit_size: 32,
                    fieldset: Some("Rxfs"),
                }),
            },
            BlockItem {
                name: "rxfa",
                description: Some("CAN Rx FIFO X Acknowledge Register"),
                array: Some(Array::Cursed(CursedArray { offsets: &[0, 16] })),
                byte_offset: 0xa8,
                inner: BlockItemInner::Register(Register {
                    access: Access::ReadWrite,
                    bit_size: 32,
                    fieldset: Some("Rxfa"),
                }),
            },
            BlockItem {
                name: "rxbc",
                description: Some("FDCAN Rx Buffer Configuration Register"),
                array: None,
                byte_offset: 0xac,
                inner: BlockItemInner::Register(Register {
                    access: Access::ReadWrite,
                    bit_size: 32,
                    fieldset: Some("Rxbc"),
                }),
            },
            BlockItem {
                name: "rxesc",
                description: Some("FDCAN Rx Buffer Element Size Configuration Register"),
                array: None,
                byte_offset: 0xbc,
                inner: BlockItemInner::Register(Register {
                    access: Access::ReadWrite,
                    bit_size: 32,
                    fieldset: Some("Rxesc"),
                }),
            },
            BlockItem {
                name: "txbc",
                description: Some("FDCAN Tx Buffer Configuration Register"),
                array: None,
                byte_offset: 0xc0,
                inner: BlockItemInner::Register(Register {
                    access: Access::ReadWrite,
                    bit_size: 32,
                    fieldset: Some("Txbc"),
                }),
            },
            BlockItem {
                name: "txfqs",
                description: Some("FDCAN Tx FIFO/Queue Status Register"),
                array: None,
                byte_offset: 0xc4,
                inner: BlockItemInner::Register(Register {
                    access: Access::ReadWrite,
                    bit_size: 32,
                    fieldset: Some("Txfqs"),
                }),
            },
            BlockItem {
                name: "txesc",
                description: Some("FDCAN Tx Buffer Element Size Configuration Register"),
                array: None,
                byte_offset: 0xc8,
                inner: BlockItemInner::Register(Register {
                    access: Access::ReadWrite,
                    bit_size: 32,
                    fieldset: Some("Txesc"),
                }),
            },
            BlockItem {
                name: "txbrp",
                description: Some("FDCAN Tx Buffer Request Pending Register"),
                array: None,
                byte_offset: 0xcc,
                inner: BlockItemInner::Register(Register {
                    access: Access::ReadWrite,
                    bit_size: 32,
                    fieldset: Some("Txbrp"),
                }),
            },
            BlockItem {
                name: "txbar",
                description: Some("FDCAN Tx Buffer Add Request Register"),
                array: None,
                byte_offset: 0xd0,
                inner: BlockItemInner::Register(Register {
                    access: Access::ReadWrite,
                    bit_size: 32,
                    fieldset: Some("Txbar"),
                }),
            },
            BlockItem {
                name: "txbcr",
                description: Some("FDCAN Tx Buffer Cancellation Request Register"),
                array: None,
                byte_offset: 0xd4,
                inner: BlockItemInner::Register(Register {
                    access: Access::ReadWrite,
                    bit_size: 32,
                    fieldset: Some("Txbcr"),
                }),
            },
            BlockItem {
                name: "txbto",
                description: Some("FDCAN Tx Buffer Transmission Occurred Register"),
                array: None,
                byte_offset: 0xd8,
                inner: BlockItemInner::Register(Register {
                    access: Access::ReadWrite,
                    bit_size: 32,
                    fieldset: Some("Txbto"),
                }),
            },
            BlockItem {
                name: "txbcf",
                description: Some("FDCAN Tx Buffer Cancellation Finished Register"),
                array: None,
                byte_offset: 0xdc,
                inner: BlockItemInner::Register(Register {
                    access: Access::ReadWrite,
                    bit_size: 32,
                    fieldset: Some("Txbcf"),
                }),
            },
            BlockItem {
                name: "txbtie",
                description: Some("FDCAN Tx Buffer Transmission Interrupt Enable Register"),
                array: None,
                byte_offset: 0xe0,
                inner: BlockItemInner::Register(Register {
                    access: Access::ReadWrite,
                    bit_size: 32,
                    fieldset: Some("Txbtie"),
                }),
            },
            BlockItem {
                name: "txbcie",
                description: Some("FDCAN Tx Buffer Cancellation Finished Interrupt Enable Register"),
                array: None,
                byte_offset: 0xe4,
                inner: BlockItemInner::Register(Register {
                    access: Access::ReadWrite,
                    bit_size: 32,
                    fieldset: Some("Txbcie"),
                }),
            },
            BlockItem {
                name: "txefc",
                description: Some("FDCAN Tx Event FIFO Configuration Register"),
                array: None,
                byte_offset: 0xf0,
                inner: BlockItemInner::Register(Register {
                    access: Access::ReadWrite,
                    bit_size: 32,
                    fieldset: Some("Txefc"),
                }),
            },
            BlockItem {
                name: "txefs",
                description: Some("FDCAN Tx Event FIFO Status Register"),
                array: None,
                byte_offset: 0xf4,
                inner: BlockItemInner::Register(Register {
                    access: Access::ReadWrite,
                    bit_size: 32,
                    fieldset: Some("Txefs"),
                }),
            },
            BlockItem {
                name: "txefa",
                description: Some("FDCAN Tx Event FIFO Acknowledge Register"),
                array: None,
                byte_offset: 0xf8,
                inner: BlockItemInner::Register(Register {
                    access: Access::ReadWrite,
                    bit_size: 32,
                    fieldset: Some("Txefa"),
                }),
            },
            BlockItem {
                name: "tttmc",
                description: Some("FDCAN TT Trigger Memory Configuration Register"),
                array: None,
                byte_offset: 0x100,
                inner: BlockItemInner::Register(Register {
                    access: Access::ReadWrite,
                    bit_size: 32,
                    fieldset: Some("Tttmc"),
                }),
            },
            BlockItem {
                name: "ttrmc",
                description: Some("FDCAN TT Reference Message Configuration Register"),
                array: None,
                byte_offset: 0x104,
                inner: BlockItemInner::Register(Register {
                    access: Access::ReadWrite,
                    bit_size: 32,
                    fieldset: Some("Ttrmc"),
                }),
            },
            BlockItem {
                name: "ttocf",
                description: Some("FDCAN TT Operation Configuration Register"),
                array: None,
                byte_offset: 0x108,
                inner: BlockItemInner::Register(Register {
                    access: Access::ReadWrite,
                    bit_size: 32,
                    fieldset: Some("Ttocf"),
                }),
            },
            BlockItem {
                name: "ttmlm",
                description: Some("FDCAN TT Matrix Limits Register"),
                array: None,
                byte_offset: 0x10c,
                inner: BlockItemInner::Register(Register {
                    access: Access::ReadWrite,
                    bit_size: 32,
                    fieldset: Some("Ttmlm"),
                }),
            },
            BlockItem {
                name: "turcf",
                description: Some("FDCAN TUR Configuration Register"),
                array: None,
                byte_offset: 0x110,
                inner: BlockItemInner::Register(Register {
                    access: Access::ReadWrite,
                    bit_size: 32,
                    fieldset: Some("Turcf"),
                }),
            },
            BlockItem {
                name: "ttocn",
                description: Some("FDCAN TT Operation Control Register"),
                array: None,
                byte_offset: 0x114,
                inner: BlockItemInner::Register(Register {
                    access: Access::ReadWrite,
                    bit_size: 32,
                    fieldset: Some("Ttocn"),
                }),
            },
            BlockItem {
                name: "ttgtp",
                description: Some("FDCAN TT Global Time Preset Register"),
                array: None,
                byte_offset: 0x118,
                inner: BlockItemInner::Register(Register {
                    access: Access::ReadWrite,
                    bit_size: 32,
                    fieldset: Some("Ttgtp"),
                }),
            },
            BlockItem {
                name: "tttmk",
                description: Some("FDCAN TT Time Mark Register"),
                array: None,
                byte_offset: 0x11c,
                inner: BlockItemInner::Register(Register {
                    access: Access::ReadWrite,
                    bit_size: 32,
                    fieldset: Some("Tttmk"),
                }),
            },
            BlockItem {
                name: "ttir",
                description: Some("FDCAN TT Interrupt Register"),
                array: None,
                byte_offset: 0x120,
                inner: BlockItemInner::Register(Register {
                    access: Access::ReadWrite,
                    bit_size: 32,
                    fieldset: Some("Ttir"),
                }),
            },
            BlockItem {
                name: "ttie",
                description: Some("FDCAN TT Interrupt Enable Register"),
                array: None,
                byte_offset: 0x124,
                inner: BlockItemInner::Register(Register {
                    access: Access::ReadWrite,
                    bit_size: 32,
                    fieldset: Some("Ttie"),
                }),
            },
            BlockItem {
                name: "ttils",
                description: Some("FDCAN TT Interrupt Line Select Register"),
                array: None,
                byte_offset: 0x128,
                inner: BlockItemInner::Register(Register {
                    access: Access::ReadWrite,
                    bit_size: 32,
                    fieldset: Some("Ttils"),
                }),
            },
            BlockItem {
                name: "ttost",
                description: Some("FDCAN TT Operation Status Register"),
                array: None,
                byte_offset: 0x12c,
                inner: BlockItemInner::Register(Register {
                    access: Access::ReadWrite,
                    bit_size: 32,
                    fieldset: Some("Ttost"),
                }),
            },
            BlockItem {
                name: "turna",
                description: Some("FDCAN TUR Numerator Actual Register"),
                array: None,
                byte_offset: 0x130,
                inner: BlockItemInner::Register(Register {
                    access: Access::ReadWrite,
                    bit_size: 32,
                    fieldset: Some("Turna"),
                }),
            },
            BlockItem {
                name: "ttlgt",
                description: Some("FDCAN TT Local and Global Time Register"),
                array: None,
                byte_offset: 0x134,
                inner: BlockItemInner::Register(Register {
                    access: Access::ReadWrite,
                    bit_size: 32,
                    fieldset: Some("Ttlgt"),
                }),
            },
            BlockItem {
                name: "ttctc",
                description: Some("FDCAN TT Cycle Time and Count Register"),
                array: None,
                byte_offset: 0x138,
                inner: BlockItemInner::Register(Register {
                    access: Access::ReadWrite,
                    bit_size: 32,
                    fieldset: Some("Ttctc"),
                }),
            },
            BlockItem {
                name: "ttcpt",
                description: Some("FDCAN TT Capture Time Register"),
                array: None,
                byte_offset: 0x13c,
                inner: BlockItemInner::Register(Register {
                    access: Access::ReadWrite,
                    bit_size: 32,
                    fieldset: Some("Ttcpt"),
                }),
            },
            BlockItem {
                name: "ttcsm",
                description: Some("FDCAN TT Cycle Sync Mark Register"),
                array: None,
                byte_offset: 0x140,
                inner: BlockItemInner::Register(Register {
                    access: Access::ReadWrite,
                    bit_size: 32,
                    fieldset: Some("Ttcsm"),
                }),
            },
            BlockItem {
                name: "ttts",
                description: Some("FDCAN TT Trigger Select Register"),
                array: None,
                byte_offset: 0x300,
                inner: BlockItemInner::Register(Register {
                    access: Access::ReadWrite,
                    bit_size: 32,
                    fieldset: Some("Ttts"),
                }),
            },
        ],
    }],
    fieldsets: &[
        FieldSet {
            name: "Cccr",
            extends: None,
            description: Some("FDCAN CC Control Register"),
            bit_size: 32,
            fields: &[
                Field {
                    name: "init",
                    description: Some("Initialization"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 0 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "cce",
                    description: Some("Configuration Change Enable"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 1 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "asm",
                    description: Some("ASM Restricted Operation Mode"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 2 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "csa",
                    description: Some("Clock Stop Acknowledge"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 3 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "csr",
                    description: Some("Clock Stop Request"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 4 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "mon",
                    description: Some("Bus Monitoring Mode"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 5 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "dar",
                    description: Some("Disable Automatic Retransmission"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 6 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "test",
                    description: Some("Test Mode Enable"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 7 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "fdoe",
                    description: Some("FD Operation Enable"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 8 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "bse",
                    description: Some("FDCAN Bit Rate Switching"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 9 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "pxhd",
                    description: Some("Protocol Exception Handling Disable"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 12 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "efbi",
                    description: Some("Edge Filtering during Bus Integration"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 13 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "txp",
                    description: Some("TXP"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 14 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "niso",
                    description: Some("Non ISO Operation"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 15 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
            ],
        },
        FieldSet {
            name: "Crel",
            extends: None,
            description: Some("FDCAN Core Release Register"),
            bit_size: 32,
            fields: &[
                Field {
                    name: "day",
                    description: Some("Timestamp Day"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 0 }),
                    bit_size: 8,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "mon",
                    description: Some("Timestamp Month"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 8 }),
                    bit_size: 8,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "year",
                    description: Some("Timestamp Year"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 16 }),
                    bit_size: 4,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "substep",
                    description: Some("Sub-step of Core release"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 20 }),
                    bit_size: 4,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "step",
                    description: Some("Step of Core release"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 24 }),
                    bit_size: 4,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "rel",
                    description: Some("Core release"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 28 }),
                    bit_size: 4,
                    array: None,
                    enumm: None,
                },
            ],
        },
        FieldSet {
            name: "Dbtp",
            extends: None,
            description: Some("FDCAN Data Bit Timing and Prescaler Register"),
            bit_size: 32,
            fields: &[
                Field {
                    name: "dsjw",
                    description: Some("Synchronization Jump Width"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 0 }),
                    bit_size: 4,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "dtseg2",
                    description: Some("Data time segment after sample point"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 4 }),
                    bit_size: 4,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "dtseg1",
                    description: Some("Data time segment after sample point"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 8 }),
                    bit_size: 5,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "dbrp",
                    description: Some("Data BIt Rate Prescaler"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 16 }),
                    bit_size: 5,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "tdc",
                    description: Some("Transceiver Delay Compensation"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 23 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
            ],
        },
        FieldSet {
            name: "Ecr",
            extends: None,
            description: Some("FDCAN Error Counter Register"),
            bit_size: 32,
            fields: &[
                Field {
                    name: "tec",
                    description: Some("Transmit Error Counter"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 0 }),
                    bit_size: 8,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "rec",
                    description: Some("Receive Error Counter"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 8 }),
                    bit_size: 7,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "rp",
                    description: Some("Receive Error Passive"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 15 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "cel",
                    description: Some("AN Error Logging"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 16 }),
                    bit_size: 8,
                    array: None,
                    enumm: None,
                },
            ],
        },
        FieldSet {
            name: "Endn",
            extends: None,
            description: Some("FDCAN Core Release Register"),
            bit_size: 32,
            fields: &[Field {
                name: "etv",
                description: Some("Endiannes Test Value"),
                bit_offset: BitOffset::Regular(RegularBitOffset { offset: 0 }),
                bit_size: 32,
                array: None,
                enumm: None,
            }],
        },
        FieldSet {
            name: "Gfc",
            extends: None,
            description: Some("FDCAN Global Filter Configuration Register"),
            bit_size: 32,
            fields: &[
                Field {
                    name: "rrfe",
                    description: Some("Reject Remote Frames Extended"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 0 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "rrfs",
                    description: Some("Reject Remote Frames Standard"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 1 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "anfe",
                    description: Some("Accept Non-matching Frames Extended"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 2 }),
                    bit_size: 2,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "anfs",
                    description: Some("Accept Non-matching Frames Standard"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 4 }),
                    bit_size: 2,
                    array: None,
                    enumm: None,
                },
            ],
        },
        FieldSet {
            name: "Hpms",
            extends: None,
            description: Some("FDCAN High Priority Message Status Register"),
            bit_size: 32,
            fields: &[
                Field {
                    name: "bidx",
                    description: Some("Buffer Index"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 0 }),
                    bit_size: 6,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "msi",
                    description: Some("Message Storage Indicator"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 6 }),
                    bit_size: 2,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "fidx",
                    description: Some("Filter Index"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 8 }),
                    bit_size: 7,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "flst",
                    description: Some("Filter List"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 15 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
            ],
        },
        FieldSet {
            name: "Ie",
            extends: None,
            description: Some("FDCAN Interrupt Enable Register"),
            bit_size: 32,
            fields: &[
                Field {
                    name: "rfne",
                    description: Some("Rx FIFO X New Message Enable"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 0 }),
                    bit_size: 1,
                    array: Some(Array::Cursed(CursedArray { offsets: &[0, 4] })),
                    enumm: None,
                },
                Field {
                    name: "rfwe",
                    description: Some("Rx FIFO X Watermark Reached Enable"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 1 }),
                    bit_size: 1,
                    array: Some(Array::Cursed(CursedArray { offsets: &[0, 4] })),
                    enumm: None,
                },
                Field {
                    name: "rffe",
                    description: Some("Rx FIFO X Full Enable"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 2 }),
                    bit_size: 1,
                    array: Some(Array::Cursed(CursedArray { offsets: &[0, 4] })),
                    enumm: None,
                },
                Field {
                    name: "rfle",
                    description: Some("Rx FIFO X Message Lost Enable"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 3 }),
                    bit_size: 1,
                    array: Some(Array::Cursed(CursedArray { offsets: &[0, 4] })),
                    enumm: None,
                },
                Field {
                    name: "hpme",
                    description: Some("High Priority Message Enable"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 8 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "tce",
                    description: Some("Transmission Completed Enable"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 9 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "tcfe",
                    description: Some("Transmission Cancellation Finished Enable"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 10 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "tefe",
                    description: Some("Tx FIFO Empty Enable"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 11 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "tefne",
                    description: Some("Tx Event FIFO New Entry Enable"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 12 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "tefwe",
                    description: Some("Tx Event FIFO Watermark Reached Enable"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 13 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "teffe",
                    description: Some("Tx Event FIFO Full Enable"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 14 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "tefle",
                    description: Some("Tx Event FIFO Element Lost Enable"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 15 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "tswe",
                    description: Some("Timestamp Wraparound Enable"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 16 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "mrafe",
                    description: Some("Message RAM Access Failure Enable"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 17 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "tooe",
                    description: Some("Timeout Occurred Enable"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 18 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "drxe",
                    description: Some("Message stored to Dedicated Rx Buffer Enable"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 19 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "bece",
                    description: Some("Bit Error Corrected Interrupt Enable"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 20 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "beue",
                    description: Some("Bit Error Uncorrected Interrupt Enable"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 21 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "eloe",
                    description: Some("Error Logging Overflow Enable"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 22 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "epe",
                    description: Some("Error Passive Enable"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 23 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "ewe",
                    description: Some("Warning Status Enable"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 24 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "boe",
                    description: Some("Bus_Off Status Enable"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 25 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "wdie",
                    description: Some("Watchdog Interrupt Enable"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 26 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "peae",
                    description: Some("Protocol Error in Arbitration Phase Enable"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 27 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "pede",
                    description: Some("Protocol Error in Data Phase Enable"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 28 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "arae",
                    description: Some("Access to Reserved Address Enable"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 29 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
            ],
        },
        FieldSet {
            name: "Ile",
            extends: None,
            description: Some("FDCAN Interrupt Line Enable Register"),
            bit_size: 32,
            fields: &[
                Field {
                    name: "eint0",
                    description: Some("Enable Interrupt Line 0"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 0 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "eint1",
                    description: Some("Enable Interrupt Line 1"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 1 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
            ],
        },
        FieldSet {
            name: "Ils",
            extends: None,
            description: Some("FDCAN Interrupt Line Select Register"),
            bit_size: 32,
            fields: &[
                Field {
                    name: "rfnl",
                    description: Some("Rx FIFO X New Message Interrupt Line"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 0 }),
                    bit_size: 1,
                    array: Some(Array::Cursed(CursedArray { offsets: &[0, 4] })),
                    enumm: None,
                },
                Field {
                    name: "rfwl",
                    description: Some("Rx FIFO X Watermark Reached Interrupt Line"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 1 }),
                    bit_size: 1,
                    array: Some(Array::Cursed(CursedArray { offsets: &[0, 4] })),
                    enumm: None,
                },
                Field {
                    name: "rffl",
                    description: Some("Rx FIFO X Full Interrupt Line"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 2 }),
                    bit_size: 1,
                    array: Some(Array::Cursed(CursedArray { offsets: &[0, 4] })),
                    enumm: None,
                },
                Field {
                    name: "rfll",
                    description: Some("Rx FIFO X Message Lost Interrupt Line"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 3 }),
                    bit_size: 1,
                    array: Some(Array::Cursed(CursedArray { offsets: &[0, 4] })),
                    enumm: None,
                },
                Field {
                    name: "hpml",
                    description: Some("High Priority Message Interrupt Line"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 8 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "tcl",
                    description: Some("Transmission Completed Interrupt Line"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 9 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "tcfl",
                    description: Some("Transmission Cancellation Finished Interrupt Line"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 10 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "tefl",
                    description: Some("Tx FIFO Empty Interrupt Line"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 11 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "tefnl",
                    description: Some("Tx Event FIFO New Entry Interrupt Line"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 12 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "tefwl",
                    description: Some("Tx Event FIFO Watermark Reached Interrupt Line"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 13 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "teffl",
                    description: Some("Tx Event FIFO Full Interrupt Line"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 14 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "tefll",
                    description: Some("Tx Event FIFO Element Lost Interrupt Line"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 15 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "tswl",
                    description: Some("Timestamp Wraparound Interrupt Line"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 16 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "mrafl",
                    description: Some("Message RAM Access Failure Interrupt Line"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 17 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "tool",
                    description: Some("Timeout Occurred Interrupt Line"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 18 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "drxl",
                    description: Some("Message stored to Dedicated Rx Buffer Interrupt Line"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 19 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "becl",
                    description: Some("Bit Error Corrected Interrupt Line"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 20 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "beul",
                    description: Some("Bit Error Uncorrected Interrupt Line"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 21 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "elol",
                    description: Some("Error Logging Overflow Interrupt Line"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 22 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "epl",
                    description: Some("Error Passive Interrupt Line"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 23 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "ewl",
                    description: Some("Warning Status Interrupt Line"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 24 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "bol",
                    description: Some("Bus_Off Status"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 25 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "wdil",
                    description: Some("Watchdog Interrupt Line"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 26 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "peal",
                    description: Some("Protocol Error in Arbitration Phase Line"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 27 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "pedl",
                    description: Some("Protocol Error in Data Phase Line"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 28 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "aral",
                    description: Some("Access to Reserved Address Line"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 29 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
            ],
        },
        FieldSet {
            name: "Ir",
            extends: None,
            description: Some("FDCAN Interrupt Register"),
            bit_size: 32,
            fields: &[
                Field {
                    name: "rfn",
                    description: Some("Rx FIFO X New Message"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 0 }),
                    bit_size: 1,
                    array: Some(Array::Cursed(CursedArray { offsets: &[0, 4] })),
                    enumm: None,
                },
                Field {
                    name: "rfw",
                    description: Some("Rx FIFO X Watermark Reached"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 1 }),
                    bit_size: 1,
                    array: Some(Array::Cursed(CursedArray { offsets: &[0, 4] })),
                    enumm: None,
                },
                Field {
                    name: "rff",
                    description: Some("Rx FIFO X Full"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 2 }),
                    bit_size: 1,
                    array: Some(Array::Cursed(CursedArray { offsets: &[0, 4] })),
                    enumm: None,
                },
                Field {
                    name: "rfl",
                    description: Some("Rx FIFO X Message Lost"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 3 }),
                    bit_size: 1,
                    array: Some(Array::Cursed(CursedArray { offsets: &[0, 4] })),
                    enumm: None,
                },
                Field {
                    name: "hpm",
                    description: Some("High Priority Message"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 8 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "tc",
                    description: Some("Transmission Completed"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 9 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "tcf",
                    description: Some("Transmission Cancellation Finished"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 10 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "tef",
                    description: Some("Tx FIFO Empty"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 11 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "tefn",
                    description: Some("Tx Event FIFO New Entry"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 12 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "tefw",
                    description: Some("Tx Event FIFO Watermark Reached"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 13 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "teff",
                    description: Some("Tx Event FIFO Full"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 14 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "tefl",
                    description: Some("Tx Event FIFO Element Lost"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 15 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "tsw",
                    description: Some("Timestamp Wraparound"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 16 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "mraf",
                    description: Some("Message RAM Access Failure"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 17 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "too",
                    description: Some("Timeout Occurred"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 18 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "drx",
                    description: Some("Message stored to Dedicated Rx Buffer"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 19 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "elo",
                    description: Some("Error Logging Overflow"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 22 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "ep",
                    description: Some("Error Passive"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 23 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "ew",
                    description: Some("Warning Status"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 24 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "bo",
                    description: Some("Bus_Off Status"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 25 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "wdi",
                    description: Some("Watchdog Interrupt"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 26 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "pea",
                    description: Some("Protocol Error in Arbitration Phase (Nominal Bit Time is used)"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 27 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "ped",
                    description: Some("Protocol Error in Data Phase (Data Bit Time is used)"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 28 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "ara",
                    description: Some("Access to Reserved Address"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 29 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
            ],
        },
        FieldSet {
            name: "Nbtp",
            extends: None,
            description: Some("FDCAN Nominal Bit Timing and Prescaler Register"),
            bit_size: 32,
            fields: &[
                Field {
                    name: "ntseg2",
                    description: Some("Nominal Time segment after sample point"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 0 }),
                    bit_size: 7,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "ntseg1",
                    description: Some("Nominal Time segment before sample point"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 8 }),
                    bit_size: 8,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "nbrp",
                    description: Some("Bit Rate Prescaler"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 16 }),
                    bit_size: 9,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "nsjw",
                    description: Some("NSJW: Nominal (Re)Synchronization Jump Width."),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 25 }),
                    bit_size: 7,
                    array: None,
                    enumm: None,
                },
            ],
        },
        FieldSet {
            name: "Ndat1",
            extends: None,
            description: Some("FDCAN New Data 1 Register"),
            bit_size: 32,
            fields: &[Field {
                name: "nd",
                description: Some("New data (buffers 0 - 31)"),
                bit_offset: BitOffset::Regular(RegularBitOffset { offset: 0 }),
                bit_size: 32,
                array: None,
                enumm: None,
            }],
        },
        FieldSet {
            name: "Ndat2",
            extends: None,
            description: Some("FDCAN New Data 2 Register"),
            bit_size: 32,
            fields: &[Field {
                name: "nd",
                description: Some("New data (buffers 32 - 63)"),
                bit_offset: BitOffset::Regular(RegularBitOffset { offset: 0 }),
                bit_size: 32,
                array: None,
                enumm: None,
            }],
        },
        FieldSet {
            name: "Psr",
            extends: None,
            description: Some("FDCAN Protocol Status Register"),
            bit_size: 32,
            fields: &[
                Field {
                    name: "lec",
                    description: Some("Last Error Code"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 0 }),
                    bit_size: 3,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "act",
                    description: Some("Activity"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 3 }),
                    bit_size: 2,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "ep",
                    description: Some("Error Passive"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 5 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "ew",
                    description: Some("Warning Status"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 6 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "bo",
                    description: Some("Bus_Off Status"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 7 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "dlec",
                    description: Some("Data Last Error Code"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 8 }),
                    bit_size: 3,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "resi",
                    description: Some("ESI flag of last received FDCAN Message"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 11 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "rbrs",
                    description: Some("BRS flag of last received FDCAN Message"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 12 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "redl",
                    description: Some("Received FDCAN Message"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 13 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "pxe",
                    description: Some("Protocol Exception Event"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 14 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "tdcv",
                    description: Some("Transmitter Delay Compensation Value"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 16 }),
                    bit_size: 7,
                    array: None,
                    enumm: None,
                },
            ],
        },
        FieldSet {
            name: "Rwd",
            extends: None,
            description: Some("FDCAN RAM Watchdog Register"),
            bit_size: 32,
            fields: &[
                Field {
                    name: "wdc",
                    description: Some("Watchdog configuration"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 0 }),
                    bit_size: 8,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "wdv",
                    description: Some("Watchdog value"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 8 }),
                    bit_size: 8,
                    array: None,
                    enumm: None,
                },
            ],
        },
        FieldSet {
            name: "Rxbc",
            extends: None,
            description: Some("FDCAN Rx Buffer Configuration Register"),
            bit_size: 32,
            fields: &[Field {
                name: "rbsa",
                description: Some("Rx Buffer Start Address"),
                bit_offset: BitOffset::Regular(RegularBitOffset { offset: 2 }),
                bit_size: 14,
                array: None,
                enumm: None,
            }],
        },
        FieldSet {
            name: "Rxesc",
            extends: None,
            description: Some("FDCAN Rx Buffer Element Size Configuration Register"),
            bit_size: 32,
            fields: &[
                Field {
                    name: "fds",
                    description: Some("Rx FIFO X Data Field Size"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 0 }),
                    bit_size: 3,
                    array: Some(Array::Cursed(CursedArray { offsets: &[0, 4] })),
                    enumm: None,
                },
                Field {
                    name: "rbds",
                    description: Some("Rx Buffer Data Field Size"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 8 }),
                    bit_size: 3,
                    array: None,
                    enumm: None,
                },
            ],
        },
        FieldSet {
            name: "Rxfa",
            extends: None,
            description: Some("CAN Rx FIFO X Acknowledge Register"),
            bit_size: 32,
            fields: &[Field {
                name: "fai",
                description: Some("Rx FIFO X Acknowledge Index"),
                bit_offset: BitOffset::Regular(RegularBitOffset { offset: 0 }),
                bit_size: 6,
                array: None,
                enumm: None,
            }],
        },
        FieldSet {
            name: "Rxfc",
            extends: None,
            description: Some("FDCAN Rx FIFO X Configuration Register"),
            bit_size: 32,
            fields: &[
                Field {
                    name: "fsa",
                    description: Some("Rx FIFO X Start Address"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 2 }),
                    bit_size: 14,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "fs",
                    description: Some("Rx FIFO X Size"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 16 }),
                    bit_size: 7,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "fwm",
                    description: Some("FIFO X Watermark"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 24 }),
                    bit_size: 7,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "fom",
                    description: Some("FIFO X operation mode"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 31 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
            ],
        },
        FieldSet {
            name: "Rxfs",
            extends: None,
            description: Some("FDCAN Rx FIFO X Status Register"),
            bit_size: 32,
            fields: &[
                Field {
                    name: "ffl",
                    description: Some("Rx FIFO X Fill Level"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 0 }),
                    bit_size: 7,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "fgi",
                    description: Some("Rx FIFO X Get Index"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 8 }),
                    bit_size: 6,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "fpi",
                    description: Some("Rx FIFO X Put Index"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 16 }),
                    bit_size: 6,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "ff",
                    description: Some("Rx FIFO X Full"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 24 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "rfl",
                    description: Some("Rx FIFO X Message Lost"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 25 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
            ],
        },
        FieldSet {
            name: "Sidfc",
            extends: None,
            description: Some("FDCAN Standard ID Filter Configuration Register"),
            bit_size: 32,
            fields: &[
                Field {
                    name: "flssa",
                    description: Some("Filter List Standard Start Address"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 2 }),
                    bit_size: 14,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "lss",
                    description: Some("List Size Standard"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 16 }),
                    bit_size: 8,
                    array: None,
                    enumm: None,
                },
            ],
        },
        FieldSet {
            name: "Tdcr",
            extends: None,
            description: Some("FDCAN Transmitter Delay Compensation Register"),
            bit_size: 32,
            fields: &[
                Field {
                    name: "tdcf",
                    description: Some("Transmitter Delay Compensation Filter Window Length"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 0 }),
                    bit_size: 7,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "tdco",
                    description: Some("Transmitter Delay Compensation Offset"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 8 }),
                    bit_size: 7,
                    array: None,
                    enumm: None,
                },
            ],
        },
        FieldSet {
            name: "Test",
            extends: None,
            description: Some("FDCAN Test Register"),
            bit_size: 32,
            fields: &[
                Field {
                    name: "lbck",
                    description: Some("Loop Back mode"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 4 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "tx",
                    description: Some("Loop Back mode"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 5 }),
                    bit_size: 2,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "rx",
                    description: Some("Control of Transmit Pin"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 7 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
            ],
        },
        FieldSet {
            name: "Tocc",
            extends: None,
            description: Some("FDCAN Timeout Counter Configuration Register"),
            bit_size: 32,
            fields: &[
                Field {
                    name: "etoc",
                    description: Some("Enable Timeout Counter"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 0 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "tos",
                    description: Some("Timeout Select"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 1 }),
                    bit_size: 2,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "top",
                    description: Some("Timeout Period"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 16 }),
                    bit_size: 16,
                    array: None,
                    enumm: None,
                },
            ],
        },
        FieldSet {
            name: "Tocv",
            extends: None,
            description: Some("FDCAN Timeout Counter Value Register"),
            bit_size: 32,
            fields: &[Field {
                name: "toc",
                description: Some("Timeout Counter"),
                bit_offset: BitOffset::Regular(RegularBitOffset { offset: 0 }),
                bit_size: 16,
                array: None,
                enumm: None,
            }],
        },
        FieldSet {
            name: "Tscc",
            extends: None,
            description: Some("FDCAN Timestamp Counter Configuration Register"),
            bit_size: 32,
            fields: &[
                Field {
                    name: "tss",
                    description: Some("Timestamp Select"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 0 }),
                    bit_size: 2,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "tcp",
                    description: Some("Timestamp Counter Prescaler"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 16 }),
                    bit_size: 4,
                    array: None,
                    enumm: None,
                },
            ],
        },
        FieldSet {
            name: "Tscv",
            extends: None,
            description: Some("FDCAN Timestamp Counter Value Register"),
            bit_size: 32,
            fields: &[Field {
                name: "tsc",
                description: Some("Timestamp Counter"),
                bit_offset: BitOffset::Regular(RegularBitOffset { offset: 0 }),
                bit_size: 16,
                array: None,
                enumm: None,
            }],
        },
        FieldSet {
            name: "Ttcpt",
            extends: None,
            description: Some("FDCAN TT Capture Time Register"),
            bit_size: 32,
            fields: &[
                Field {
                    name: "ccv",
                    description: Some("Cycle Count Value"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 0 }),
                    bit_size: 6,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "swv",
                    description: Some("Stop Watch Value"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 16 }),
                    bit_size: 16,
                    array: None,
                    enumm: None,
                },
            ],
        },
        FieldSet {
            name: "Ttcsm",
            extends: None,
            description: Some("FDCAN TT Cycle Sync Mark Register"),
            bit_size: 32,
            fields: &[Field {
                name: "csm",
                description: Some("Cycle Sync Mark"),
                bit_offset: BitOffset::Regular(RegularBitOffset { offset: 0 }),
                bit_size: 16,
                array: None,
                enumm: None,
            }],
        },
        FieldSet {
            name: "Ttctc",
            extends: None,
            description: Some("FDCAN TT Cycle Time and Count Register"),
            bit_size: 32,
            fields: &[
                Field {
                    name: "ct",
                    description: Some("Cycle Time"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 0 }),
                    bit_size: 16,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "cc",
                    description: Some("Cycle Count"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 16 }),
                    bit_size: 6,
                    array: None,
                    enumm: None,
                },
            ],
        },
        FieldSet {
            name: "Ttgtp",
            extends: None,
            description: Some("FDCAN TT Global Time Preset Register"),
            bit_size: 32,
            fields: &[
                Field {
                    name: "ncl",
                    description: Some("Time Preset"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 0 }),
                    bit_size: 16,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "ctp",
                    description: Some("Cycle Time Target Phase"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 16 }),
                    bit_size: 16,
                    array: None,
                    enumm: None,
                },
            ],
        },
        FieldSet {
            name: "Ttie",
            extends: None,
            description: Some("FDCAN TT Interrupt Enable Register"),
            bit_size: 32,
            fields: &[
                Field {
                    name: "sbce",
                    description: Some("Start of Basic Cycle Interrupt Enable"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 0 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "smce",
                    description: Some("Start of Matrix Cycle Interrupt Enable"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 1 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "csme",
                    description: Some("Change of Synchronization Mode Interrupt Enable"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 2 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "soge",
                    description: Some("Start of Gap Interrupt Enable"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 3 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "rtmie",
                    description: Some("Register Time Mark Interrupt Enable"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 4 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "ttmie",
                    description: Some("Trigger Time Mark Event Internal Interrupt Enable"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 5 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "swee",
                    description: Some("Stop Watch Event Interrupt Enable"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 6 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "gtwe",
                    description: Some("Global Time Wrap Interrupt Enable"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 7 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "gtde",
                    description: Some("Global Time Discontinuity Interrupt Enable"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 8 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "gtee",
                    description: Some("Global Time Error Interrupt Enable"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 9 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "txue",
                    description: Some("Tx Count Underflow Interrupt Enable"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 10 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "txoe",
                    description: Some("Tx Count Overflow Interrupt Enable"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 11 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "se1e",
                    description: Some("Scheduling Error 1 Interrupt Enable"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 12 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "se2e",
                    description: Some("Scheduling Error 2 Interrupt Enable"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 13 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "elce",
                    description: Some("Change Error Level Interrupt Enable"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 14 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "iwtge",
                    description: Some("Initialization Watch Trigger Interrupt Enable"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 15 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "wte",
                    description: Some("Watch Trigger Interrupt Enable"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 16 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "awe",
                    description: Some("Application Watchdog Interrupt Enable"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 17 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "cere",
                    description: Some("Configuration Error Interrupt Enable"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 18 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
            ],
        },
        FieldSet {
            name: "Ttils",
            extends: None,
            description: Some("FDCAN TT Interrupt Line Select Register"),
            bit_size: 32,
            fields: &[
                Field {
                    name: "sbcl",
                    description: Some("Start of Basic Cycle Interrupt Line"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 0 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "smcl",
                    description: Some("Start of Matrix Cycle Interrupt Line"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 1 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "csml",
                    description: Some("Change of Synchronization Mode Interrupt Line"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 2 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "sogl",
                    description: Some("Start of Gap Interrupt Line"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 3 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "rtmil",
                    description: Some("Register Time Mark Interrupt Line"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 4 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "ttmil",
                    description: Some("Trigger Time Mark Event Internal Interrupt Line"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 5 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "swel",
                    description: Some("Stop Watch Event Interrupt Line"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 6 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "gtwl",
                    description: Some("Global Time Wrap Interrupt Line"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 7 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "gtdl",
                    description: Some("Global Time Discontinuity Interrupt Line"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 8 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "gtel",
                    description: Some("Global Time Error Interrupt Line"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 9 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "txul",
                    description: Some("Tx Count Underflow Interrupt Line"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 10 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "txol",
                    description: Some("Tx Count Overflow Interrupt Line"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 11 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "se1l",
                    description: Some("Scheduling Error 1 Interrupt Line"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 12 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "se2l",
                    description: Some("Scheduling Error 2 Interrupt Line"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 13 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "elcl",
                    description: Some("Change Error Level Interrupt Line"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 14 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "iwtgl",
                    description: Some("Initialization Watch Trigger Interrupt Line"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 15 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "wtl",
                    description: Some("Watch Trigger Interrupt Line"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 16 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "awl",
                    description: Some("Application Watchdog Interrupt Line"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 17 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "cerl",
                    description: Some("Configuration Error Interrupt Line"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 18 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
            ],
        },
        FieldSet {
            name: "Ttir",
            extends: None,
            description: Some("FDCAN TT Interrupt Register"),
            bit_size: 32,
            fields: &[
                Field {
                    name: "sbc",
                    description: Some("Start of Basic Cycle"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 0 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "smc",
                    description: Some("Start of Matrix Cycle"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 1 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "csm",
                    description: Some("Change of Synchronization Mode"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 2 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "sog",
                    description: Some("Start of Gap"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 3 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "rtmi",
                    description: Some("Register Time Mark Interrupt"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 4 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "ttmi",
                    description: Some("Trigger Time Mark Event Internal"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 5 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "swe",
                    description: Some("Stop Watch Event"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 6 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "gtw",
                    description: Some("Global Time Wrap"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 7 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "gtd",
                    description: Some("Global Time Discontinuity"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 8 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "gte",
                    description: Some("Global Time Error"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 9 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "txu",
                    description: Some("Tx Count Underflow"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 10 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "txo",
                    description: Some("Tx Count Overflow"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 11 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "se1",
                    description: Some("Scheduling Error 1"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 12 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "se2",
                    description: Some("Scheduling Error 2"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 13 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "elc",
                    description: Some("Error Level Changed"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 14 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "iwtg",
                    description: Some("Initialization Watch Trigger"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 15 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "wt",
                    description: Some("Watch Trigger"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 16 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "aw",
                    description: Some("Application Watchdog"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 17 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "cer",
                    description: Some("Configuration Error"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 18 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
            ],
        },
        FieldSet {
            name: "Ttlgt",
            extends: None,
            description: Some("FDCAN TT Local and Global Time Register"),
            bit_size: 32,
            fields: &[
                Field {
                    name: "lt",
                    description: Some("Local Time"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 0 }),
                    bit_size: 16,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "gt",
                    description: Some("Global Time"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 16 }),
                    bit_size: 16,
                    array: None,
                    enumm: None,
                },
            ],
        },
        FieldSet {
            name: "Ttmlm",
            extends: None,
            description: Some("FDCAN TT Matrix Limits Register"),
            bit_size: 32,
            fields: &[
                Field {
                    name: "ccm",
                    description: Some("Cycle Count Max"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 0 }),
                    bit_size: 6,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "css",
                    description: Some("Cycle Start Synchronization"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 6 }),
                    bit_size: 2,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "txew",
                    description: Some("Tx Enable Window"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 8 }),
                    bit_size: 4,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "entt",
                    description: Some("Expected Number of Tx Triggers"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 16 }),
                    bit_size: 12,
                    array: None,
                    enumm: None,
                },
            ],
        },
        FieldSet {
            name: "Ttocf",
            extends: None,
            description: Some("FDCAN TT Operation Configuration Register"),
            bit_size: 32,
            fields: &[
                Field {
                    name: "om",
                    description: Some("Operation Mode"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 0 }),
                    bit_size: 2,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "gen",
                    description: Some("Gap Enable"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 3 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "tm",
                    description: Some("Time Master"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 4 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "ldsdl",
                    description: Some("LD of Synchronization Deviation Limit"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 5 }),
                    bit_size: 3,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "irto",
                    description: Some("Initial Reference Trigger Offset"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 8 }),
                    bit_size: 7,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "eecs",
                    description: Some("Enable External Clock Synchronization"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 15 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "awl",
                    description: Some("Application Watchdog Limit"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 16 }),
                    bit_size: 8,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "egtf",
                    description: Some("Enable Global Time Filtering"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 24 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "ecc",
                    description: Some("Enable Clock Calibration"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 25 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "evtp",
                    description: Some("Event Trigger Polarity"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 26 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
            ],
        },
        FieldSet {
            name: "Ttocn",
            extends: None,
            description: Some("FDCAN TT Operation Control Register"),
            bit_size: 32,
            fields: &[
                Field {
                    name: "sgt",
                    description: Some("Set Global time"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 0 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "ecs",
                    description: Some("External Clock Synchronization"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 1 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "swp",
                    description: Some("Stop Watch Polarity"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 2 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "sws",
                    description: Some("Stop Watch Source"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 3 }),
                    bit_size: 2,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "rtie",
                    description: Some("Register Time Mark Interrupt Pulse Enable"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 5 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "tmc",
                    description: Some("Register Time Mark Compare"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 6 }),
                    bit_size: 2,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "ttie",
                    description: Some("Trigger Time Mark Interrupt Pulse Enable"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 8 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "gcs",
                    description: Some("Gap Control Select"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 9 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "fgp",
                    description: Some("Finish Gap"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 10 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "tmg",
                    description: Some("Time Mark Gap"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 11 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "nig",
                    description: Some("Next is Gap"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 12 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "escn",
                    description: Some("External Synchronization Control"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 13 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "lckc",
                    description: Some("TT Operation Control Register Locked"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 15 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
            ],
        },
        FieldSet {
            name: "Ttost",
            extends: None,
            description: Some("FDCAN TT Operation Status Register"),
            bit_size: 32,
            fields: &[
                Field {
                    name: "el",
                    description: Some("Error Level"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 0 }),
                    bit_size: 2,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "ms",
                    description: Some("Master State"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 2 }),
                    bit_size: 2,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "sys",
                    description: Some("Synchronization State"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 4 }),
                    bit_size: 2,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "qgtp",
                    description: Some("Quality of Global Time Phase"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 6 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "qcs",
                    description: Some("Quality of Clock Speed"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 7 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "rto",
                    description: Some("Reference Trigger Offset"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 8 }),
                    bit_size: 8,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "wgtd",
                    description: Some("Wait for Global Time Discontinuity"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 22 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "gfi",
                    description: Some("Gap Finished Indicator"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 23 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "tmp",
                    description: Some("Time Master Priority"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 24 }),
                    bit_size: 3,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "gsi",
                    description: Some("Gap Started Indicator"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 27 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "wfe",
                    description: Some("Wait for Event"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 28 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "awe",
                    description: Some("Application Watchdog Event"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 29 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "wecs",
                    description: Some("Wait for External Clock Synchronization"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 30 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "spl",
                    description: Some("Schedule Phase Lock"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 31 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
            ],
        },
        FieldSet {
            name: "Ttrmc",
            extends: None,
            description: Some("FDCAN TT Reference Message Configuration Register"),
            bit_size: 32,
            fields: &[
                Field {
                    name: "rid",
                    description: Some("Reference Identifier"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 0 }),
                    bit_size: 29,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "xtd",
                    description: Some("Extended Identifier"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 30 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "rmps",
                    description: Some("Reference Message Payload Select"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 31 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
            ],
        },
        FieldSet {
            name: "Tttmc",
            extends: None,
            description: Some("FDCAN TT Trigger Memory Configuration Register"),
            bit_size: 32,
            fields: &[
                Field {
                    name: "tmsa",
                    description: Some("Trigger Memory Start Address"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 2 }),
                    bit_size: 14,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "tme",
                    description: Some("Trigger Memory Elements"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 16 }),
                    bit_size: 7,
                    array: None,
                    enumm: None,
                },
            ],
        },
        FieldSet {
            name: "Tttmk",
            extends: None,
            description: Some("FDCAN TT Time Mark Register"),
            bit_size: 32,
            fields: &[
                Field {
                    name: "tm",
                    description: Some("Time Mark"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 0 }),
                    bit_size: 16,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "ticc",
                    description: Some("Time Mark Cycle Code"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 16 }),
                    bit_size: 7,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "lckm",
                    description: Some("TT Time Mark Register Locked"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 31 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
            ],
        },
        FieldSet {
            name: "Ttts",
            extends: None,
            description: Some("FDCAN TT Trigger Select Register"),
            bit_size: 32,
            fields: &[
                Field {
                    name: "swtdel",
                    description: Some("Stop watch trigger input selection"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 0 }),
                    bit_size: 2,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "evtsel",
                    description: Some("Event trigger input selection"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 4 }),
                    bit_size: 2,
                    array: None,
                    enumm: None,
                },
            ],
        },
        FieldSet {
            name: "Turcf",
            extends: None,
            description: Some("FDCAN TUR Configuration Register"),
            bit_size: 32,
            fields: &[
                Field {
                    name: "ncl",
                    description: Some("Numerator Configuration Low"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 0 }),
                    bit_size: 16,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "dc",
                    description: Some("Denominator Configuration"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 16 }),
                    bit_size: 14,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "elt",
                    description: Some("Enable Local Time"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 31 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
            ],
        },
        FieldSet {
            name: "Turna",
            extends: None,
            description: Some("FDCAN TUR Numerator Actual Register"),
            bit_size: 32,
            fields: &[Field {
                name: "nav",
                description: Some("Numerator Actual Value"),
                bit_offset: BitOffset::Regular(RegularBitOffset { offset: 0 }),
                bit_size: 18,
                array: None,
                enumm: None,
            }],
        },
        FieldSet {
            name: "Txbar",
            extends: None,
            description: Some("FDCAN Tx Buffer Add Request Register"),
            bit_size: 32,
            fields: &[Field {
                name: "ar",
                description: Some("Add Request"),
                bit_offset: BitOffset::Regular(RegularBitOffset { offset: 0 }),
                bit_size: 1,
                array: Some(Array::Regular(RegularArray { len: 32, stride: 1 })),
                enumm: None,
            }],
        },
        FieldSet {
            name: "Txbc",
            extends: None,
            description: Some("FDCAN Tx Buffer Configuration Register"),
            bit_size: 32,
            fields: &[
                Field {
                    name: "tbsa",
                    description: Some("Tx Buffers Start Address"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 2 }),
                    bit_size: 14,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "ndtb",
                    description: Some("Number of Dedicated Transmit Buffers"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 16 }),
                    bit_size: 6,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "tfqs",
                    description: Some("Transmit FIFO/Queue Size"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 24 }),
                    bit_size: 6,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "tfqm",
                    description: Some("Tx FIFO/Queue Mode"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 30 }),
                    bit_size: 1,
                    array: None,
                    enumm: Some("Tfqm"),
                },
            ],
        },
        FieldSet {
            name: "Txbcf",
            extends: None,
            description: Some("FDCAN Tx Buffer Cancellation Finished Register"),
            bit_size: 32,
            fields: &[Field {
                name: "cf",
                description: Some("Cancellation Finished"),
                bit_offset: BitOffset::Regular(RegularBitOffset { offset: 0 }),
                bit_size: 1,
                array: Some(Array::Regular(RegularArray { len: 32, stride: 1 })),
                enumm: None,
            }],
        },
        FieldSet {
            name: "Txbcie",
            extends: None,
            description: Some("FDCAN Tx Buffer Cancellation Finished Interrupt Enable Register"),
            bit_size: 32,
            fields: &[Field {
                name: "cf",
                description: Some("Cancellation Finished Interrupt Enable"),
                bit_offset: BitOffset::Regular(RegularBitOffset { offset: 0 }),
                bit_size: 1,
                array: Some(Array::Regular(RegularArray { len: 32, stride: 1 })),
                enumm: None,
            }],
        },
        FieldSet {
            name: "Txbcr",
            extends: None,
            description: Some("FDCAN Tx Buffer Cancellation Request Register"),
            bit_size: 32,
            fields: &[Field {
                name: "cr",
                description: Some("Cancellation Request"),
                bit_offset: BitOffset::Regular(RegularBitOffset { offset: 0 }),
                bit_size: 1,
                array: Some(Array::Regular(RegularArray { len: 32, stride: 1 })),
                enumm: None,
            }],
        },
        FieldSet {
            name: "Txbrp",
            extends: None,
            description: Some("FDCAN Tx Buffer Request Pending Register"),
            bit_size: 32,
            fields: &[Field {
                name: "trp",
                description: Some("Transmission Request Pending"),
                bit_offset: BitOffset::Regular(RegularBitOffset { offset: 0 }),
                bit_size: 1,
                array: Some(Array::Regular(RegularArray { len: 32, stride: 1 })),
                enumm: None,
            }],
        },
        FieldSet {
            name: "Txbtie",
            extends: None,
            description: Some("FDCAN Tx Buffer Transmission Interrupt Enable Register"),
            bit_size: 32,
            fields: &[Field {
                name: "tie",
                description: Some("Transmission Interrupt Enable"),
                bit_offset: BitOffset::Regular(RegularBitOffset { offset: 0 }),
                bit_size: 1,
                array: Some(Array::Regular(RegularArray { len: 32, stride: 1 })),
                enumm: None,
            }],
        },
        FieldSet {
            name: "Txbto",
            extends: None,
            description: Some("FDCAN Tx Buffer Transmission Occurred Register"),
            bit_size: 32,
            fields: &[Field {
                name: "to",
                description: Some("Transmission Occurred"),
                bit_offset: BitOffset::Regular(RegularBitOffset { offset: 0 }),
                bit_size: 1,
                array: Some(Array::Regular(RegularArray { len: 32, stride: 1 })),
                enumm: None,
            }],
        },
        FieldSet {
            name: "Txefa",
            extends: None,
            description: Some("FDCAN Tx Event FIFO Acknowledge Register"),
            bit_size: 32,
            fields: &[Field {
                name: "efai",
                description: Some("Event FIFO Acknowledge Index"),
                bit_offset: BitOffset::Regular(RegularBitOffset { offset: 0 }),
                bit_size: 5,
                array: None,
                enumm: None,
            }],
        },
        FieldSet {
            name: "Txefc",
            extends: None,
            description: Some("FDCAN Tx Event FIFO Configuration Register"),
            bit_size: 32,
            fields: &[
                Field {
                    name: "efsa",
                    description: Some("Event FIFO Start Address"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 2 }),
                    bit_size: 14,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "efs",
                    description: Some("Event FIFO Size"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 16 }),
                    bit_size: 6,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "efwm",
                    description: Some("Event FIFO Watermark"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 24 }),
                    bit_size: 6,
                    array: None,
                    enumm: None,
                },
            ],
        },
        FieldSet {
            name: "Txefs",
            extends: None,
            description: Some("FDCAN Tx Event FIFO Status Register"),
            bit_size: 32,
            fields: &[
                Field {
                    name: "effl",
                    description: Some("Event FIFO Fill Level"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 0 }),
                    bit_size: 6,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "efgi",
                    description: Some("Event FIFO Get Index"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 8 }),
                    bit_size: 5,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "efpi",
                    description: Some("Event FIFO put index"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 16 }),
                    bit_size: 5,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "eff",
                    description: Some("Event FIFO Full"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 24 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "tefl",
                    description: Some("Tx Event FIFO Element Lost"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 25 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
            ],
        },
        FieldSet {
            name: "Txesc",
            extends: None,
            description: Some("FDCAN Tx Buffer Element Size Configuration Register"),
            bit_size: 32,
            fields: &[Field {
                name: "tbds",
                description: Some("Tx Buffer Data Field Size"),
                bit_offset: BitOffset::Regular(RegularBitOffset { offset: 0 }),
                bit_size: 3,
                array: None,
                enumm: None,
            }],
        },
        FieldSet {
            name: "Txfqs",
            extends: None,
            description: Some("FDCAN Tx FIFO/Queue Status Register"),
            bit_size: 32,
            fields: &[
                Field {
                    name: "tffl",
                    description: Some("Tx FIFO Free Level"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 0 }),
                    bit_size: 6,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "tfgi",
                    description: Some("TFGI"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 8 }),
                    bit_size: 5,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "tfqpi",
                    description: Some("Tx FIFO/Queue Put Index"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 16 }),
                    bit_size: 5,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "tfqf",
                    description: Some("Tx FIFO/Queue Full"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 21 }),
                    bit_size: 1,
                    array: None,
                    enumm: None,
                },
            ],
        },
        FieldSet {
            name: "Xidam",
            extends: None,
            description: Some("FDCAN Extended ID and Mask Register"),
            bit_size: 32,
            fields: &[Field {
                name: "eidm",
                description: Some("Extended ID Mask"),
                bit_offset: BitOffset::Regular(RegularBitOffset { offset: 0 }),
                bit_size: 29,
                array: None,
                enumm: None,
            }],
        },
        FieldSet {
            name: "Xidfc",
            extends: None,
            description: Some("FDCAN Extended ID Filter Configuration Register"),
            bit_size: 32,
            fields: &[
                Field {
                    name: "flesa",
                    description: Some("Filter List Standard Start Address"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 2 }),
                    bit_size: 14,
                    array: None,
                    enumm: None,
                },
                Field {
                    name: "lse",
                    description: Some("List Size Extended"),
                    bit_offset: BitOffset::Regular(RegularBitOffset { offset: 16 }),
                    bit_size: 8,
                    array: None,
                    enumm: None,
                },
            ],
        },
    ],
    enums: &[Enum {
        name: "Tfqm",
        description: None,
        bit_size: 1,
        variants: &[
            EnumVariant {
                name: "FIFO",
                description: Some("Tx FIFO operation"),
                value: 0,
            },
            EnumVariant {
                name: "QUEUE",
                description: Some("Tx queue operation"),
                value: 1,
            },
        ],
    }],
};
